Error processing SSI file
Leadtools.Dicom.Common

Show in webframe

GetNewViewPerspective(RasterViewPerspective,Double[],PlaneOrientation) Method






The input RasterViewPerspective to which the PlaneOrientation will be applied.
The row and column orientation vectors (or direction cosine vectors) that apply to viewPerspectiveOriginal
A PlaneOrientation that is applied to the original RasterViewPerspective
Gets a new RasterViewPerspective that results from applying a PlaneOrientation to a given RasterViewPerspective and two given direction cosine vectors.
Syntax
'Declaration
 
Public Overloads Shared Function GetNewViewPerspective( _
   ByVal viewPerspectiveOriginal As RasterViewPerspective, _
   ByVal imageOrientationVectors() As Double, _
   ByVal po As PlaneOrientation _
) As RasterViewPerspective
'Usage
 
Dim viewPerspectiveOriginal As RasterViewPerspective
Dim imageOrientationVectors() As Double
Dim po As PlaneOrientation
Dim value As RasterViewPerspective
 
value = DicomExtensions.GetNewViewPerspective(viewPerspectiveOriginal, imageOrientationVectors, po)

Parameters

viewPerspectiveOriginal
The input RasterViewPerspective to which the PlaneOrientation will be applied.
imageOrientationVectors
The row and column orientation vectors (or direction cosine vectors) that apply to viewPerspectiveOriginal
po
A PlaneOrientation that is applied to the original RasterViewPerspective

Return Value

The new RasterViewPerspective that results from having the PlaneOrientation applied.
Remarks
The input view perspective is define by two values: the original RasterViewPerspective (viewPerspectiveOriginal), and a row and column orientation vector (imageOrientationVectors). This method returns the new RasterViewPerspective that results from applying a PlaneOrientation to the input view perspective.
Example

This example does the following:

Copy Code  
Imports Leadtools.Dicom
Imports Leadtools.Dicom.Common
Imports Leadtools.Dicom.Common.Extensions
Imports Leadtools.Dicom.Common.Linq
Imports Leadtools.Dicom.Common.Linq.BasicDirectory
Imports Leadtools
Imports Leadtools.Dicom.Common.DataTypes

<TestMethod()> _
Public Sub GetNewViewPerspectiveExample()
   ' Create a new coronal PlaneOrientation that corresponds to a horizontal flip
   Dim poCoronal As PlaneOrientation = New PlaneOrientation()
   poCoronal.Name = "Coronal or Frontal"
   ' This corresponds to a horizontal flip
   poCoronal.Top = OrientationAxis.Inferior
   poCoronal.Right = OrientationAxis.Right

   ' This condition is ignored
   Dim condition As TagValueOrientationCondition = New TagValueOrientationCondition(DicomTag.ImageOrientationPatient, Nothing)
   poCoronal.Condition = condition

      ' This specifies a row and column orientation vector that corresponds to a coronal slice
   ' Row: (1,0,0)
   ' Col: (0,0,-1)
   Dim imageOrientationVectors As Double() = New Double(5) {1, 0, 0, 0, 0, -1}

   ' Find the new view perspective
   Dim newViewPerspective As RasterViewPerspective = DicomExtensions.GetNewViewPerspective(RasterViewPerspective.TopLeft, imageOrientationVectors, poCoronal)

   ' New view perspective should be BottomLeft
   MessageBox.Show("newViewPerspective should be BottomLeft" & Constants.vbLf & "Actual newViewPerspective is " & newViewPerspective.ToString())
End Sub
using Leadtools.Dicom;
using Leadtools.Dicom.Common;
using Leadtools.Dicom.Common.Extensions;
using Leadtools;
using Leadtools.Dicom.Common.Linq.BasicDirectory;
using Leadtools.Dicom.Common.DataTypes;

[TestMethod]
public void GetNewViewPerspectiveExample()
{
   // Create a new coronal PlaneOrientation that corresponds to a horizontal flip
   PlaneOrientation poCoronal = new PlaneOrientation();
   poCoronal.Name = "Coronal or Frontal";
   // This corresponds to a horizontal flip
   poCoronal.Top = OrientationAxis.Inferior;
   poCoronal.Right = OrientationAxis.Right;

   // This condition is ignored
   TagValueOrientationCondition condition = new TagValueOrientationCondition(DicomTag.ImageOrientationPatient, null);
   poCoronal.Condition = condition;

   // This specifies a row and column orientation vector that correspond to a coronal slice
   // Row: (1,0,0)
   // Col: (0,0,-1)
   double[] imageOrientationVectors = new double[6] { 1, 0, 0, 0, 0, -1 };

   // Find the new view perspective
   RasterViewPerspective newViewPerspective = DicomExtensions.GetNewViewPerspective(RasterViewPerspective.TopLeft, imageOrientationVectors, poCoronal);

   // New view perspective should be BottomLeft
   MessageBox.Show("newViewPerspective should be BottomLeft\nActual newViewPerspective is " + newViewPerspective.ToString());
}
Requirements

Target Platforms

See Also

Reference

DicomExtensions Class
DicomExtensions Members
Overload List

Error processing SSI file
   Leadtools.Dicom.Common requires a Medical toolkit license and unlock key. For more information, refer to: LEADTOOLS Toolkit Features